Künstliche Intelligenz vs. Machine Learning vs. Deep Learning


Künstliche Intelligenz

Die Abkürzung Ki steht für künstliche Intelligenz und AI steht für Artificial Intelligence. So ähnlich wie bei den Abkürzungen DNA und DNS, ist AI einfach das englische Portal zu KI. Künstliche Intelligenz ist ein Teilbereich der Informatik, der sich mit der Automatisierung von intelligentem Verhalten und den Maschinellen Lernens befasst. Nun das sagt zumindest Wikipedia. Direkt im nächsten Satz wird davon gesprochen, dass sich dieser Begriff nicht eindeutig abgrenzen lässt, da es bereits an einer genauen Definition von Intelligenz fehlt. Und wenn wir Intelligenz schon nicht definieren können, was soll dann künstliche Intelligenz sein? Im Grunde handelt es sich um eine Disziplin, in die viele Wissenschaften einzahlen. Man kann sagen, dass künstliche Intelligenz der Versuch ist, bestimmte Entscheidungsstrukturen des Menschen nachzubilden. Man denke zum Beispiel an den Schachcomputer Deep Blue der 1996 erstmals den damals amtierenden Schachweltmeister Garri Kasparow geschlagen hat. Da Algorithmen hierbei intelligentes Verhalten simulieren, spricht man dabei auch von nachgeahmter Intelligenz. Dieser Schachcomputer ist zum Beispiel nicht in der Lage ein Sudoku zu lösen. Seine Leistung beschränkt sich nur auf ein bestimmtes Problem. Auch das Computerprogramm Alpha-Go kann nur in einem Spiel glänzen. Nämlich Go. Der Begriff künstliche Intelligenz, beziehungsweise Artificial Intelligence, wurde erstmals 1955 von John McCarthy definiert. Er hat gesagt: "Ziel der KI ist es, Maschinen zu entwickeln, die sich verhalten, als verfügten sie über Intelligenz." Nach dieser Definition ist bereits eine einfache Maschine, die mit Hilfe von Aktoren und Sensoren ein Regel-Mechanismus umsetzt, ein intelligentes System, da sie dem Schein nach intelligent auf ihre Umwelt reagieren können, doch in Wahrheit handelt sie lediglich mit vordefinierten Regeln. Im Zusammenhang mit künstlicher Intelligenz wird immer die Unterscheidung zwischen starker und schwacher künstlicher Intelligenz getroffen. Starke künstliche Intelligenz ist selbst nach dem aktuellen Stand der Forschung nach wie vor Science-Fiction. Hierbei würde es sich um Computersysteme handeln, die die Arbeit zum Erledigen schwieriger Aufgabe auf Augenhöhe mit Menschen übernehmen könnten. Schwache künstliche Intelligenz ist dem gegenüber nur in der Lage, konkrete Anwendungsprobleme, wie zum Beispiel Schach oder Go zu bewältigen, und eben nicht fähig mit der allgemeinen menschlichen Intelligenz zu konkurrieren. Um von einer schwachen künstlichen Intelligenz zu einer starken künstlichen Intelligenz zu kommen, muss die Maschine Schritt für Schritt lernen wie ein Mensch zu denken.

Machine Learning

Techniken und Prozesse, die dazu verwendet werden, fasst man unter dem Begriff Machine Learning zusammen. Machine Learning ist ein Teilgebiet der künstlichen Intelligenz. Es basiert auf der Idee, wie der Mensch aus Beispielen und Erfahrungen zu lernen, ohne explizit für das Problem programmiert zu sein. Das heisst, anstatt einen Code zu schreiben, also einem konkreten Problemlösungs-Algorithmus zu präsentieren, werden Daten an einen generischen Algorithmus weitergegeben. Es gibt verschiedene Möglichkeiten, wie der Lernvorgang erfolgen kann. Mit Supervised Learning, unsupervised Learning und Reinforcement Learning. überwachtes Lernen, beziehungsweise Supervised Learning, verwendet Trainings- und Testdaten für den Lernprozess. Diese Daten enthalten nicht nur Eingangswerte, zum Beispiel Objektkennzahlen, sondern auch das gewünschte Ergebnis, zum Beispiel die Klassifikation der entsprechenden Objekte. Es werden also beispielsweise Bilder von Katzen verwendet, die auch als solche gelabelt sind. Der Machine Learning Algorithmus soll dann anhand der gelieferten Trainingsdaten eine Funktion finden, bei der die Eingangsdaten geeignet auf das Ergebnis abgebildet werden. Diese Funktion wird im Laufe des Lernprozesses selbstständig von dem Machine Learning Algorithmus angepasst. Wenn eine bestimmte Erfolgsquote mit den Trainingsdaten erreicht wurde, wird der Lernprozess unter Zuhilfenahme der Testdaten verifiziert. Diese Technik wird beispielsweise bei Clustering-Verfahren eingesetzt, bei denen die Cluster zuvor bekannt sind. Beim unbewachten Lernen, beziehungsweise dem Unsupervised Learning, werden für den Lernprozess diesmal nur Eingangsdaten verwendet, bei denen das Ergebnis noch nicht feststeht, das heisst, Tierbilder ohne Label. Der Machine Learning Algorithmus soll anhand von Merkmalen in den Eingangsdaten Muster erkennen. Diese Technik kann zum Clustern von Daten eingesetzt werden, bei denen die Cluster vorher allerdings nicht bekannt sind. Als Beispiel könnten wir Datensätze über das Gewicht und die Grösse von Männern und Frauen bekommen, doch wir wissen nicht von wem welche Daten kommen, beziehungsweise wann ein Mensch aufgrund der Körpergrösse und des Gewichts als Mann oder eher als Frau klassifiziert werden soll. Tragen wir diese Daten in ein Koordinatensystem ein, dann sehen wir als Menschen, dass sich Cluster gebildet haben, und die Aufgabe des Machine Learning Algorithmus ist es nun diese Cluster zu finden und für zukünftige Datensätze zu entscheiden, ob diese von Männern oder von Frauen kommen. Das verstärkte Lernen, beziehungsweise Reinforcement Learning basiert auf einem Belohnungsprinzip. Am Anfang befindet man sich in einem Ausgangszustand ohne Informationen über das Umfeld und ohne Kenntnisse über die Auswirkungen bestimmter Aktionen. Nach dem Ausfüllen einer Aktion wechselt man in einen neuen Zustand und es findet eine positive oder negative Rückmeldung statt. Dieser Prozess wird so lange durchgeführt, bis eine bestimmte Endbedingung eingetreten ist. Danach kann man den Lernprozess natürlich wiederholen, um den Outcome noch weiter zu optimieren. Machine Learning ist also ein Verfahren, das einen Algorithmus nutzt, um Daten zu analysieren, von ihnen zu lernen und darüber eine Aus- oder Vorhersage zu treffen.

Deep Learning

Learning, oder tiefes Lernen, ist wiederum ein Teilbereich des maschinellen Lernens. Dabei kommen übrigens die oft zitierten künstlichen neuralen Netze zur Abbildung des Lernprozesses zum Einsatz. Diese repräsentieren ein Modell des menschlichen Gehirns und der neuralen Prozesse die in ihm ablaufen. Deep Learning ist also eine Möglichkeit zur Umsetzung maschinellen Lernens und neuronale Netze werden zur konkreten Implementierung verwendet. Das Modell besteht aus verschiedenen Elementen. Inputneuronen sind die Neuronen, mit denen Signale von der Aussenwelt empfangen werden. Für Jede Art von Input, also jedes Merkmal/Feature, gibt es ein Neuron. Hiddenneuronen sind Neuronen, die den eigentlichen Lernprozess repräsentieren. Diese bilden sogenannte Aktivitätsschichten, beziehungsweise Hiddenlayer von denen es in einem künstlichen neuronalen Netz auch mehrere geben kann. Outputneuronen sind die Neuronen die Signale an die Aussenwelt abgeben. Auch hier gibt es für jede Art Output, also Merkmal oder Feature, ein Neuron. Die Neuronen der jeweiligen Kategorien werden zu Schichten zusammengefasst. Es gibt im Nebenneuronalennetz also eine Input-Layer mit den Inputneuronen, mindestens eine Hiddenlayer mit den Hiddenneuronen und eine Output-Layer mit den Outputneuronen. Wenn ein künstliches neuronales Netz mehr als eine Hiddenlayer besitzt, wird es als Deep Neural Network, sprich als tiefes neuronales Netz bezeichnet. Daher auch der Name Deep Learning. Die Verbindungen zwischen den einzelnen Layern, beziehungsweise den darin eingefassten Neuronen, werden dem Beispiel des menschlichen Gehirns folgend Synapsen genannt. Diese enthalten eine Gewichtung, die mit den Signalen der Inputneuronen multipliziert werden. Die so entstandenen Gewichte werden während des Lernprozesses auf Basis von Funktionen angepasst.